package untiring07.j2ee.advanced;

import java.io.IOException;
import java.io.PrintWriter;

import javax.servlet.RequestDispatcher;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

@WebServlet("/J06ForwardvsRedirect")
public class J06ForwardvsRedirect extends HttpServlet {
	private static final long serialVersionUID = 1L;
       

	protected void doGet(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException {
	
	// JSP 페이지에 넘겨줄 데이터 저장
    req.setAttribute("msg", "안녕하신가, 굳세고 강한 아침!!");	
		
	res.setContentType("text/html;charset=UTF-8");
	PrintWriter out = res.getWriter();
	out.print("<html>");
	out.print("<head>");
	//out.print("<meta http-equiv='refresh' content='3;url=http://google.com'/>");
	out.print("<meta http-equiv='refresh' content='3;url=/JSP_Advanced/J06Forward.jsp?msg=Hello'/>");
	out.print("</head>");
	out.print("<body>");
	out.print("</body>");
	out.print("</html>");
	String dispatchUrl = "J06Forward.jsp";
	RequestDispatcher rd = req.getRequestDispatcher(dispatchUrl);
	 //rd.forward(req, res);
	// forward
	// 웹 서버가 서버내 자원을 요청함
	// 따라서 URL은 아무 변화가 없음
	// 하지만, 서버 밖 자원은 요청불가
	// 객체형태로 JSP 페이지에 데이터를 전달가능
	 
	// sendRedirect
	// 클라이언트가 서버내 자원을 요청함
	// URL은 클라이언트가 요청한 자원으로 변경
	// 반면, 서버외 자원도 요청 가능
	// 텍스트현태로만 JSP페이지에 데이터를 전달가능
	}
	

}
